/*
7-182 乘法口诀数列
分数 20
作者 陈越
单位 浙江大学

本题要求你从任意给定的两个 1 位数字 a1​ 和 a2​ 开始，用乘法口诀生成一个数列 {an​}，规则为从 a1​ 开始顺次进行，每次将当前数字与后面一个数字相乘，将结果贴在数列末尾。如果结果不是 1 位数，则其每一位都应成为数列的一项。
输入格式：

输入在一行中给出 3 个整数，依次为 a1​、a2​ 和 n，满足 0≤a1​,a2​≤9，0<n≤10^3。
输出格式：

在一行中输出数列的前 n 项。数字间以 1 个空格分隔，行首尾不得有多余空格。
输入样例：

2 3 10

输出样例：

2 3 6 1 8 6 8 4 8 4

样例解释：

数列前 2 项为 2 和 3。从 2 开始，因为 2×3=6，所以第 3 项是 6。因为 3×6=18，所以第 4、5 项分别是 1、8。依次类推…… 最后因为第 6 项有 6×8=48，对应第 10、11 项应该是 4、8。而因为只要求输出前 10 项，所以在输出 4 后结束。
*/

#include <stdio.h>

int main() {
    int a1, a2, n;
    scanf("%d %d %d", &a1, &a2, &n);
    int seq[2000];
    seq[0] = a1;
    seq[1] = a2;
    int len = 2;
    for (int i = 0; i < n - 2; i++) {
        int product = seq[i] * seq[i + 1];
        if (product < 10) {
            seq[len++] = product;
        } else {
            seq[len++] = product / 10;
            seq[len++] = product % 10;
        }
    }
    for (int i = 0; i < n; i++) {
        printf("%d", seq[i]);
        if (i < n - 1) {
            printf(" ");
        }
    }
    return 0;
}